Not applicable.
Not applicable.
This invention is in the field of data communication, and is more particularly directed to equalization techniques in modem communications.
Data communication among computers and terminals is now commonplace. Much of this communication traffic is carried out by way of modulated signals transmitted and received over existing communications facilities, such as the Public Switched Telephone Network (PSTN) and existing cable television (CATV) networks. The modulation and demodulation of these signals are generally carried out by way of modulator/demodulators (xe2x80x9cmodemsxe2x80x9d), residing as system functions in many personal computers, workstations, palm-size computers, and other devices that perform data communications over these communications facilities. As is fundamental in the art, a modem is a device or system function that converts signals to be communicated over the telephone network from a digital bitstream generated by its host computer into an analog signal within the voice band, and vice versa, permitting data communications to be readily carried out over the same telephone network as other communications, such as voice or television programming.
The frequency response of the path, or channel, over which a given modem communication session is carried out is far from ideal, causing the transmitted signal is significantly distorted by its transmission over the channel. Such distortion can give rise to effects such as intersymbol interference (xe2x80x9cISIxe2x80x9d), which prevents the receiving modem from accurately distinguishing adjacent received data symbols from one another. Because the channel frequency response varies widely from location to location, it is not feasible to define signal processing characteristics such as data rate, sub-channel frequencies, and signal filtering a priori; rather, the particular frequency characteristics of a communications channel are specifically measured and compensated within each modem communications session.
One common approach for deriving the appropriate channel compensation utilizes the transmission of a known xe2x80x9ctraining sequencexe2x80x9d of data from one location to a receiving modem (the string sequence being xe2x80x9cknownxe2x80x9d by the receiving modem). The receiving modem demodulates and decodes the training sequence as received from the transmitting modem, determines the nature of any error between the received training sequence and the known sequence, and sets various filter parameters accordingly, thus compensating for frequency-dependent distortion that is presented by the communications channel. These parameters may also be communicated to the transmitting modem, if appropriate, for use in its own compensation of return traffic (or for pre-compensation of the transmitted signal, if desired).
However, in certain situations, a known training sequence is not available for use by the modem in establishing communication. One such situation is the use of the cable television (CATV) network as the medium of communication, particularly in the provision of Internet access to homes. The attractive features of the CATV network include the relatively large installed base of homes having cable television service, and also the inherently high data rates that may be carried by the coaxial cable with which cable television programs are delivered, especially when compared with twisted-pair copper wiring commonly used in telephone service. Data communication along the CATV network typically consists of multiple user modems connected to a headend, which is a cable company office from which the CATV programming is forwarded to the cable subscribers. The transmission medium in a CATV network is typically coaxial cable, or a combination of coaxial cable and fiber optic links, giving rise to the so-called Hybrid Fiber Coax (HFC) infrastructure. Modems at the user locations can also establish dial-up connections with the headend in the CATV network, for example to access the Internet, in which case signals are bidirectionally communicated, rather than simply unidirectionally communicated as in the distribution of television programming. However, according to conventional protocols for the establishment of communications sessions using cable modems, no training sequences are communicated between the headend and the user modems.
Even if training sequences are not to be used, the appropriate filter parameters must still be determined in order for data communications to be carried out at a reasonable data rate. Absent the training sequences, the equalization parameters must be determined, and updated, from the transmitted data itself. One conventional type of equalizer that is useful for this operation is referred to as the decision feedback equalizer, or xe2x80x9cDFExe2x80x9d. In a typical DFE, the received digital signal is processed by an equalizer, such as may be implemented by a finite impulse response (FIR) filter, and forwarded to a decision block which presents a xe2x80x9cdecisionxe2x80x9d about the value of the filtered symbol. The output of the decision is applied to an update function that implements an adaptation algorithm for updating the equalizer coefficients (in the FIR realization, these parameter will be the xe2x80x9ctapsxe2x80x9d along the digital delay line) in response to a comparison between the decision output and the signal applied to the equalizer. Over time, the equalizer coefficients converge upon the appropriate channel compensation. However, because decision feedback equalization depends upon reasonable accuracy of the decision process, the equalizer coefficients may never converge if the intersymbol interference is significant. To address this issue, a process referred to in the art as xe2x80x9cblind equalizationxe2x80x9d can be performed by a receiving modem to coarsely define the appropriate filter parameters for use in later transmissions. Blind equalization does not utilize any assumptions about the actual data transmitted, but rather relies upon statistical properties of the transmitted data in order to set the equalization coefficients. Specifically, the update, or adaptation, performed in blind equalization compares the input and output of the equalizer FIR to one another, and updates the FIR by minimizing a cost function based upon the desired statistics.
Typically, blind equalization is used as an initial process in order to remove ISI and other distortion to such an extent that other equalization techniques, such as DFE, may then be applied. An example of such a combination equalization technique is schematically illustrated for a conventional cable modem in FIG. 1. As illustrated therein, signal s(t) is applied to communications channel 2, and communicated to a modem which receives the signal r(t). Signal r(t) thus corresponds to the transmitted signal, as distorted by channel 2; in the time domain, r(t)=h(t) * s(t), where h(t) is the response of channel 2 and where * is the convolution operator. Typically, the analog signal r(t) is sampled upon receipt by an analog-to-digital converter (ADC) (not shown), which generates a digital sample stream rk. Blind equalizer function 3 receives the sample stream rk at its adaptive equalizer function 4. Adaptive equalizer function 4 applies a digital filter, such as an FIR, to the received sample stream rk. The equalization coefficients applied by equalizer function 4 are defined according to an initial default state that is updated by update function 6. The output of adaptive equalizer function 4 is a signal yk, which is applied to update function 6 along with the received sample stream rk. Decision block 7 also receives the output of adaptive equalizer 4, determines the symbol value therefrom, and forwards detected symbols ŝk to the remainder of the modem.
Decision feedback equalizer (DFE) function 8 is in parallel with blind equalizer function 2. In the conventional manner, DFE function 8 includes feed-forward equalizer 9 that applies a compensating filter, also generally an FIR filter, to the received signal rk. The output of feed-forward equalizer 9 is applied to adder 11, which also receives the output of feedback equalizer 15. Adder 11 applies the difference in these inputs to decision block 13, which determines the detected symbol therefrom and forwards detected symbols ŝk to the remainder of the modem, and to the input of feedback equalizer 15. The combination of feedback equalizer 15 and feed-forward equalizer 9 implements the appropriate compensation for channel 2. In this conventional arrangement, the equalizer coefficients of feedback equalizer 15 and feed-forward equalizer 9 are updated by adder 17, which compares the input to and output from decision block 13 to generate a difference that is used to adapt the coefficients of equalizers 9, 15.
In this conventional arrangement, blind equalizer function 3 operates during the initial portion of the transmission, with the filter parameters (or xe2x80x9ctapsxe2x80x9d, in the digital filter sense) of adaptive equalizer function 4 being set to coarsely compensate for the distortion effects (i.e., response h(t)) of channel 2. These parameters, or taps, are then forwarded to DFE 8, to set the initial operating characteristics of the feed-forward equalizer 9 therein.
In the operation of the conventional blind equalizer function 2, update function 6 controls the operation of adaptive equalizer function 4 according to the conventional Constant Modulus Algorithm (CMA). The CMA is of the gradient descent type, and operates by minimizing a cost function such as:
Jcma=|xcex3xe2x88x92|y|2|2
where modulus xcex3 is defined as the kurtosis of the source signal             s      k        ⁡          (              γ        =                              E            ⁢                                          "LeftBracketingBar"                s                "RightBracketingBar"                            4                                            E            ⁢                                          "LeftBracketingBar"                s                "RightBracketingBar"                            2                                          )        ,
and where y is the xe2x80x9csoftxe2x80x9d decision output of equalizer 4. In the case of QPSK modulation, where the amplitude of the coded signal is constant, and the phase communicates the symbol, the value of xcex3 is unity (from which the term xe2x80x9cconstant modulusxe2x80x9d is derived. In this example, the minimization is referred to as xe2x80x9cCMA2xe2x80x9d, since the cost function considers the difference of the kurtosis value and the square of the absolute value of the soft output. Other order CMA minimization (including CMA1) are also utilized in conventional blind equalization.
Update function 6 adjusts the parameters of equalization according to this CMA minimization. For the example of CMA2, the update equation may be expressed as follows:
fk+1=fk+xcexcrkyk(xcex3xe2x88x92|yk|2)
where xcexc is a convergence constant between 0 and 1; as noted above, the current value of the received signal is expressed as rk, while the current output of equalizer function 4 is yk. Those in the art will recognize that this update expression effectively corresponds to an LMS error minimization approach.
When utilized in the equalization of a modulated signal, each output yk of equalizer function 4 represents a complex value. In the digital sense, the complex value is represented by a real portion YR and an imaginary portion yI, such that the output value yk=yR +iyI. Accordingly, the calculation of the update equation for CMA2 minimization may be expressed as:             f              k        +        1              -          f      k        =      K    ⁡          (              γ        -                              "LeftBracketingBar"                                                            y                  I                  2                                +                                  y                  R                  2                                                      "RightBracketingBar"                    2                    )      
(K being a constant) or, for the case of CMA1:             f              k        +        1              -          f      k        =      K    ⁡          (              γ        -                  "LeftBracketingBar"                                                    y                I                2                            +                              y                R                2                                              "RightBracketingBar"                    )      
In either case, the term:             y      I      2        +          y      R      2      
must be evaluated by update function 6 in blind equalizer function 3.
As is well known in the art, the determination of square roots by way of digital processing is extremely cumbersome; the squaring of a value is also somewhat cumbersome, as it involves a multiplication. Considering that the evaluation of the term             y      I      2        +          y      R      2      
must be performed by update function 6 for each received symbol rk, it is apparent that this complex arithmetic operation will constitute a significant portion of the processing required for blind equalization. When implemented by way of program instructions, for example where blind equalization function 3 is realized by a programmed digital signal processor (DSP) or other programmable device, the execution of update function 6 will thus require a significant number of machine cycles. On the other hand, the realization of update function 6 by custom logic circuitry will require a significant amount of circuitry, occupying substantial integrated circuit chip area and thus being quite costly.
It is therefore desirable to utilize an appropriate approximation of the determination of the magnitude of point yk in complex space.
Numerous digital numerical approximations to the determination of the magnitude of a point in complex space (i.e., approximations to the root of the sum of squares of two values) are known in the art. Examples of such approximations are described in U.S. Pat. No. 5,367,702, commonly assigned herewith, and incorporated. herein by this reference. Other known digital approximations to the square root of the sum of two squares are described in U.S. Pat. No. 3,829,671, U.S. Pat. No. 3,858,036, U.S. Pat. No. 3,922,540, and U.S. Pat. No. 5,459,683. However, the selection of a suitable approximation for use in the update process in blind equalization is not readily apparent. This is because of the risk of accumulated error in the update process, such that the equalization parameters fk for equalizer function 4 diverges, rather than converges upon the appropriate equalization state. The risk of such divergence is apparent from the update equation itself, considering that the new parameter fk+1 depends upon its previous value fk.
It is therefore an object of the present invention to provide a method of performing the update function in blind equalization which uses an approximation to the determination of the magnitude of a digitally represented symbol value in complex space.
It is a further object of the present invention to provide such a method in which the approximation error does not accumulate over repeated updating.
It is a further object of the present invention to provide such a method that may be efficiently implemented either in program instructions or in logic circuitry.
Other objects and advantages of the present invention will be apparent to those of ordinary skill in the art having reference to the following specification together with its drawings.
The present invention may be implemented in a blind equalization function, such as may be utilized on the receive side of a cable modem, realized either as relatively simple logic circuitry, or as simple program instructions. The blind equalization function includes an adaptive equalizer, the parameters of which are updated by an update function according to the current output of the adaptive equalizer and the corresponding received symbol value. The update function evaluates an error approximation based upon determinations of the maximum of the real and imaginary components of the symbol output from the adaptive equalizer, and of the minimum of the real and imaginary components, with such determinations used to derive the subtrahend to be subtracted from the modulus to derive the error estimate.